function Window(name){
    this.name = name;
}
Window.prototype.getName = function(){ 
    //原型上的属性 getName 
    //name 是实例上的 属性

    return this.name;
}

//这是类的方法，只可以通过类访问，不能通过实例访问 es
// es5 的写法
Window.getInstance = (function(){
    let inst;
    return function(name){
        if(!inst){
            inst = new Window(name);
        }
        return inst;
    }
})()



// 以上的写法有问题是，不能直接new 
/**
 *  1. 客户端，就是使用这个类的时候，必须要知道这是一个单例的类，必选主动调动inst
 *  2. 并不能直正阻止客户端直接new Window
 *  解决 二个问题，期待什么？
 *  1. new window
 *  看现在的 3个的，
 *  */
